
# repr转换将数据对象转化为源代码中的规范表示形式，即Python程序代码的形式
print(repr(10))

test_str = 'Here is a \n newline'

# 使用 repr 函数会以规范的源代码表现形式展示 会包含引号，因为它们在Python源代码中属于字符串内容的一部分
print(repr(test_str))

print('{!r}'.format(test_str))  # !r 修饰符会调用 repr函数

# !r 修饰符与 position 字段可以组合使用
print('{1!r} loves {0!r}'.format('Jane','Lucky'))

# 使用 fill字符时只有在 align字符出现时才可以使用
# :是输出规范中的一项  -是fill字符 表示填充  >表示右对齐  24表示宽度
print('{:->24}'.format('Hey Bill G, pick me!'))

#  ^居中
print('{:-^10}Jones'.format('Tom'))

#  =将填充字符放在 符号（+或-）和要输出的数字中间 该字符仅对数字数据有效
print('{:0=8}'.format(-1250))

# format()函数 每次只能对一个输出字段进行格式化
print(format('Lady8','@<7'))

# 符号sign
print('results>{: },{:+},{:-}'.format(25,25,25))

# 前导 0 字符
# 当输出的文本宽度（比如下面的125）小于输出字段宽度时输出前导0
i,j = 125,25456
print('{:02}  {:010}.'.format(i,j))

# 千位分隔符
fss1 = 'The USA owes {:,} dollars.'
print(fss1.format(21000000000000))

n = 4500000
print('The amount on the check was ${:*>12,}'.format(n))

# 精度 precision
fss = ' {:10.3f}\n {:10.3f}'
print(fss.format(22.1,1000.007))

# 字符串的长度大于 精度值的话 会被截断，小于则没有任何影响
print('{:*<6.6}'.format('Jane'))

print('{:b}'.format(101))
# 使用 # 说明符可自动插入基数前缀，例如 0b 表示二进制
print('{:#b}'.format(101))

# 显示百分数
print('{:.2%}'.format(0.231))

b1 = int(input('b1:'),2)  # 后面的 2 表示为 二进制
print(b1)







